Вот такое вот оно по виду:
и лежит без дела вот тут: yadi.sk/i/_HsKGtUg3aPcuC
Есть некоторый готовый набор тикеров, который представлен в раскрывающемся списке 1. «Symbol». Сам список представлен в ячейке A100.
Тайм-фрейм выбираем из списка 2: «Период», а скачивание котировок производится нажатием кнопки 3: «DownFromFin».
Интервал: «Start Date» — «End Date». Текстовый файл сохраняется в каталог нахождения самой программы. Есть возможность просмотреть график (вкладка «Chart»).
Готовый пример для акций, класс — TQBR.
Список всех классов выводится на вторую строку лог-файла.
-- seclist_csv.lua, © smart-lab.ru/profile/XXM/
-- список бумаг, транслируемые QUIK-ом
local ver = '0.91' -- 22.12.2016
local scriptPath = getScriptPath()
local Terminal_Version=getInfoParam('VERSION')
local logFile = scriptPath..'\\'..'seclist.csv'
local file = io.open(logFile, "w")
assert(file, "Ошибка открытия "..logFile)
function string.split(str, sep)
local fields = {}
str:gsub(string.format("([^%s]+)", sep), function(f_c) fields[#fields + 1] = f_c end)
return fields
end
function write_log(str)
file:write(str .. "\n")
end
function Main()
local local_datetime = os.time(os.date("*t"))
local dtd = os.date("%d.%m.%Y %H:%M",local_datetime)
local mes = 'Start seclist_csv '..ver..', QUIK '..Terminal_Version..', '..dtd
message(mes);
file:write(mes .. "\n")
class_list = getClassesList()
mes = 'class_list = '..class_list
message(mes); write_log(mes);
local class_listT = {}
class_listT = string.split(class_list, ',')
for i = 1, #class_listT do
local fline = class_listT[i]
if fline == 'TQBR' then
-- для примера - только акции!
local classInfo = {}
classInfo = getClassInfo(fline)
-- 3.2.2 getClassInfo
-- Функция предназначена для получения информации о классе.
local sec_list = getClassSecurities(classInfo.code)
local sec_listTable = {}
sec_listTable = string.split(sec_list, ',')
for i = 1, #sec_listTable do
local classCode = classInfo.code
local secCode = sec_listTable[i]
local securityInfo = getSecurityInfo(classCode, secCode)
local name = securityInfo.name
local step = securityInfo.min_price_step
local secInfo = classInfo.name..';'..classCode..';'..name..';'..secCode..';'..step
write_log(secInfo);
end
end
end
local mes = 'Готово!'
message(mes); write_log(mes);
file:flush()
file:close()
end
Main()
-- seclist_csv.lua
На выходе получил список из 292 ценных бумаг.1. Визуализация сделок участников ЛЧИ-2015 в Quik.
2. Визуализация сделок участников ЛЧИ-2015 в Quik. Часть 2.
3. Скачать индикаторы на языке Lua.
На ЛЧИ 2016 не запускал, вирусов нет, применяйте, как хотите, не хотите — не применяйте.
UPD 19:17, 26.09.2016:
Написали сообщение: «Индикаторы для ЛЧИ-2016 подходят»
#ДоброПропадает